<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="generator" content="smart-doc">
  <%if(isNotEmpty(projectName)){%>
  <title>${projectName}</title>
  <%}else{%>
  <title>API 接口文档</title>
  <%}%>
  <link rel="stylesheet" href="font.css">
  <link rel="stylesheet" href="AllInOne.css?v=${version}"/>
  <%if(isNotEmpty(highlightCssLink)){%>
  <link rel="stylesheet" href="${highlightCssLink}">
  <%}%>
  <style>.literalblock pre, .listingblock pre:not(.highlight), .listingblock pre[class="highlight"], .listingblock pre[class^="highlight "], .listingblock pre.CodeRay, .listingblock pre.prettyprint {
      background: ${background}
  }

  .hljs {
      padding: 0
  }</style>
  <script src="highlight.min.js"></script>
  <script src="jquery.min.js"></script>
</head>

<body class="book toc2 toc-left">
<div id="header">
  <%if(isNotEmpty(projectName)){%>
  <h1>${projectName}</h1>
  <%}%>
  <div id="toc" class="toc2">
    <div id="book-search-input">
      <input id="search" type="text" placeholder="按目录搜索">
    </div>
    <div id="toctitle">
      <span>API 接口文档</span>
    </div>
    <ul id="accordion" class="sectlevel1">
      <%for(apiGroup in apiDocList){%>
      <%if(!apiDocListOnlyHasDefaultGroup){%>
      <%if(apiGroupLP.first){%>
      <li class="open">
        <a class="dd"
           href="#_${apiGroup.order}_${apiGroup.group}">${apiGroup.order}.&nbsp;${htmlEscape(apiGroup.group)}</a>
        <ul class="sectlevel1">
          <%for(api in apiGroup.childrenApiDocs){%>
          <li class="open">
            <a class="dd" href="#_${apiGroup.order}_${api.order}_${removeLineBreaks(api.desc)}">${apiGroup.order}.${api.order}.&nbsp;${htmlEscape(api.desc)}</a>
            <ul class="sectlevel2" style="display: block">
              <%for(doc in api.list){%>
              <li>
                <%if(doc.deprecated){%>
                <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${apiGroup.order}.${api.order}.${doc.order}.&nbsp;<span
                  class="line-through">${htmlEscape(doc.desc)}</span>
                </a>
                <%}else{%>
                <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${apiGroup.order}.${api.order}.${doc.order}.&nbsp;${htmlEscape(doc.desc)}</a>
                <%}%>
              </li>
              <%}%>
            </ul>
          </li>
          <%}%>
        </ul>
      </li>
      <%}else{%>
      <li>
        <a class="dd" href="#_${apiGroup.group}">${apiGroup.order}.&nbsp;${htmlEscape(apiGroup.group)}</a>
        <ul class="sectlevel1">
          <%for(api in apiGroup.childrenApiDocs){%>
          <li class="open">
            <a class="dd" href="#_${apiGroup.order}_${api.order}_${removeLineBreaks(api.desc)}">${apiGroup.order}.${api.order}.&nbsp;${htmlEscape(api.desc)}</a>
            <ul class="sectlevel2">
              <%for(doc in api.list){%>
              <li>
                <%if(doc.deprecated){%>
                <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${apiGroup.order}.${api.order}.${doc.order}.&nbsp;<span
                  class="line-through">${htmlEscape(doc.desc)}</span>
                </a>
                <%}else{%>
                <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${apiGroup.order}.${api.order}.${doc.order}.&nbsp;${htmlEscape(doc.desc)}</a>
                <%}%>
              </li>
              <%}%>
            </ul>
          </li>
          <%}%>
        </ul>
      </li>
      <%}%>
      <%}else{%>
      <%if(apiGroupLP.first){%>
      <%for(api in apiGroup.childrenApiDocs){%>
      <li class="open">
        <a class="dd" href="#_${apiGroup.order}_${api.order}_${removeLineBreaks(api.desc)}">${api.order}.&nbsp;${htmlEscape(api.desc)}</a>
        <ul class="sectlevel2">
          <%for(doc in api.list){%>
          <li>
            <%if(doc.deprecated){%>
            <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${api.order}.${doc.order}.&nbsp;<span
              class="line-through">${htmlEscape(doc.desc)}</span>
            </a>
            <%}else{%>
            <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${api.order}.${doc.order}.&nbsp;${htmlEscape(doc.desc)}</a>
            <%}%>
          </li>
          <%}%>
        </ul>
      </li>
      <%}%>
      <%}else{%>
      <%for(api in apiGroup.childrenApiDocs){%>
      <li>
        <a class="dd" href="#_${apiGroup.order}_${api.order}_${api.desc}">${api.order}.&nbsp;${htmlEscape(api.desc)}</a>
        <ul class="sectlevel2">
          <%for(doc in api.list){%>
          <li>
            <%if(doc.deprecated){%>
            <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${api.order}.${doc.order}.&nbsp;<span
              class="line-through">${htmlEscape(doc.desc)}</span>
            </a>
            <%}else{%>
            <a href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">${api.order}.${doc.order}.&nbsp;${htmlEscape(doc.desc)}</a>
            <%}%>
          </li>
          <%}%>
        </ul>
      </li>
      <%}%>
      <%}%>
      <%}%>
      <%}%>
      <%if(isNotEmpty(errorCodeList)){%>
      <li>
        <a href="#_${errorListTitle}">${errorCodeListOrder}.&nbsp;${errorListTitle}</a>
      </li>
      <%}%>
      <%if(isNotEmpty(dictList)){%>
      <li>
        <a class="dd" href="#_${dictListTitle}">${dictListOrder}.&nbsp;${dictListTitle}</a>
        <ul class="sectlevel2">
          <%for(dict in dictList){%>
          <li>
            <a
              href="#_${dictListOrder}_${dict.order}_${dict.title}">${dictListOrder}.${dict.order}.&nbsp;${dict.title}</a>
          </li>
          <%}%>
        </ul>
      </li>
      <%}%>
    </ul>
  </div>
</div>
<div id="content">
  <%if(isNotEmpty(revisionLogList)){%>
  <div id="preamble">
    <div class="sectionbody">
      <table class="tableblock frame-all grid-all spread">
        <!--        <colgroup>-->
        <!--          <col style="width: 20%;">-->
        <!--          <col style="width: 20%;">-->
        <!--          <col style="width: 20%;">-->
        <!--          <col style="width: 20%;">-->
        <!--          <col style="width: 20%;">-->
        <!--        </colgroup>-->
        <thead style="background-color: #cbcbcb;">
        <tr>
          <th class="tableblock halign-left valign-top">版本号</th>
          <th class="tableblock halign-left valign-top">修改时间</th>
          <!--          <th class="tableblock halign-left valign-top">状态</th>-->
          <!--          <th class="tableblock halign-left valign-top">作者</th>-->
          <th class="tableblock halign-left valign-top">说明</th>
        </tr>
        </thead>
        <tbody>
        <%for(revisionLog in revisionLogList){%>
        <tr>
          <td class="tableblock halign-left valign-top">
            <p class="tableblock">${revisionLog.version}</p>
          </td>
          <td class="tableblock halign-left valign-top">
            <p class="tableblock">${revisionLog.revisionTime}</p>
          </td>
          <!--          <td class="tableblock halign-left valign-top">-->
          <!--            <p class="tableblock">${revisionLog.status}</p>-->
          <!--          </td>-->
          <!--          <td class="tableblock halign-left valign-top">-->
          <!--            <p class="tableblock">${revisionLog.author}</p>-->
          <!--          </td>-->
          <td class="tableblock halign-left valign-top">
            <p class="tableblock">${htmlEscape(revisionLog.remarks)}</p>
          </td>
        </tr>
        <%}%>
        </tbody>
      </table>
    </div>
  </div>
  <%}%>
  <%for(apiGroup in apiDocList){%>
  <%if(!apiDocListOnlyHasDefaultGroup){%>
  <h1 id="_${apiGroup.order}_${apiGroup.name}">
    <a class="anchor" href="#_${apiGroup.order}_${apiGroup.name}"></a>
    <a class="link" href="#_${apiGroup.order}_${apiGroup.name}">${apiGroup.order}.&nbsp;${htmlEscape(apiGroup.name)}</a>
  </h1>
  <%}%>
  <%for(api in apiGroup.childrenApiDocs){%>
  <div class="sect1">
    <h2 id="_${apiGroup.order}_${api.order}_${removeLineBreaks(api.desc)}">
      <a class="anchor" href="#_${apiGroup.order}_${api.order}_${api.desc}"></a>
      <a class="link" href="#_${apiGroup.order}_${api.order}_${removeLineBreaks(api.desc)}">
        <%if(!apiDocListOnlyHasDefaultGroup){%>${apiGroup.order}.${api.order}.&nbsp;${htmlEscape(api.desc)}
        <%}else{%>${api.order}.&nbsp;${htmlEscape(api.desc)}
        <%}%>
      </a>
    </h2>
    <div class="sectionbody">
      <%for(doc in api.list){%>
      <div class="sect2" id="${doc.methodId}">
        <h3 id="_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">
          <a class="anchor" href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}"></a>
          <%if(doc.deprecated){%>
          <a class="link" href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">
            <%if(!apiDocListOnlyHasDefaultGroup){%>${apiGroup.order}.${api.order}.${doc.order}.&nbsp;
            <%}else{%>${api.order}.${doc.order}.&nbsp;
            <%}%>
            <span class="line-through">${htmlEscape(doc.desc)}</span>
          </a>
          <%}else{%>
          <a class="link" href="#_${apiGroup.order}_${api.order}_${doc.order}_${removeLineBreaks(doc.desc)}">
            <%if(!apiDocListOnlyHasDefaultGroup){%>${apiGroup.order}.${api.order}.${doc.order}.&nbsp;${htmlEscape(doc.desc)}
            <%}else{%>${api.order}.${doc.order}.&nbsp;${htmlEscape(doc.desc)}
            <%}%>
          </a>
          <%}%>
        </h3>
        <div class="paragraph" id="${doc.methodId}-url" data-url="${doc.url}" data-download="${doc.download}"
             data-page="${doc.page}">
          <p>
            <strong>URL:</strong>
            <a href="${doc.url}" class="bare">&nbsp;${doc.url}</a>
          </p>
        </div>
        <div class="paragraph" id="${doc.methodId}-method" data-method="${doc.type}">
          <p>
            <strong>Type:</strong>&nbsp;${doc.type}
          </p>
        </div>
        <%if(isNotEmpty(doc.author)){%>
        <div class="paragraph">
          <p>
            <strong>Author:</strong>&nbsp;${doc.author}
          </p>
        </div>
        <%}%>
        <!--        <div class="paragraph" id="${doc.methodId}-content-type" data-content-type="${doc.contentType}">-->
        <!--          <p>-->
        <!--            <strong>Content-Type:</strong>&nbsp;${doc.contentType}-->
        <!--          </p>-->
        <!--        </div>-->
        <div class="paragraph">
          <p>
            <strong>接口说明:</strong>&nbsp;${htmlEscape(doc.detail)}
          </p>
        </div>
        <%if(isNotEmpty(doc.requestHeaders)&&displayRequestParams){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>请求头（RequestHeaders）说明:</strong>
          </p>
        </div>
        <table class="tableblock frame-all grid-all spread">
          <!--          <colgroup>-->
          <!--            <col style="width: 5%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--          </colgroup>-->
          <thead>
          <tr>
            <th class="tableblock halign-left valign-top">
              <div class="checkbox">
                <input type="checkbox" class="check-all" id="${doc.methodId}-header-checkbox"
                       name="${doc.methodId}-header-checkbox" checked="checked">
                <label for="${doc.methodId}-header-checkbox"></label>
              </div>
            </th>
            <th class="tableblock halign-left valign-top">Header</th>
            <th class="tableblock halign-left valign-top">Value</th>
<!--            <th class="tableblock halign-left valign-top">Type</th>-->
            <th class="tableblock halign-left valign-top">Required</th>
            <th class="tableblock halign-left valign-top">Description</th>
          </tr>
          </thead>
          <tbody id="${doc.methodId}-header">
          <%for(header in doc.requestHeaders){%>
          <tr>
            <td class="tableblock halign-left valign-top">
              <div class="checkbox">
                <input type="checkbox" id="${doc.methodId}-header-${header.name}" name="${doc.methodId}-header-checkbox"
                       checked="checked">
                <label for="${doc.methodId}-header-${header.name}"></label>
              </div>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${header.name}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">
                <input name="${header.name}" type="text" value="${header.value}"/>
            </td>
<!--            <td class="tableblock halign-left valign-top">-->
<!--              <p class="tableblock">${header.type}</p>-->
<!--            </td>-->
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${header.required}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${htmlEscape(header.desc)}</p>
            </td>
          </tr>
          <%}%>
          </tbody>
        </table>
        <%}%>
        <%if(isNotEmpty(doc.pathParams)&&displayRequestParams){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>Path-parameters:</strong>
          </p>
        </div>
        <table class="tableblock frame-all grid-all spread">
          <!--          <colgroup>-->
          <!--            <col style="width: 5%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--          </colgroup>-->
          <thead>
          <tr>
            <th class="tableblock halign-left valign-top">
              <div class='checkbox'>
                <input type="checkbox" class="check-all" id="${doc.methodId}-path-checkbox"
                       name="${doc.methodId}-path-checkbox" checked="checked">
                <label for='${doc.methodId}-path-checkbox'></label>
              </div>
            </th>
            <th class="tableblock halign-left valign-top">Parameter</th>
            <th class="tableblock halign-left valign-top">Value</th>
            <th class="tableblock halign-left valign-top">Type</th>
            <th class="tableblock halign-left valign-top">Required</th>
            <th class="tableblock halign-left valign-top">Description</th>
          </tr>
          </thead>
          <tbody id="${doc.methodId}-path-params">
          <%for(param in doc.pathParams){%>
          <tr>
            <td class="tableblock halign-left valign-top">
              <div class="checkbox">
                <input type="checkbox" id="${doc.methodId}-path-${param.field}" checked="checked"
                       name="${doc.methodId}-path-checkbox">
                <label for="${doc.methodId}-path-${param.field}"></label>
              </div>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.field}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">
                <input name="${param.field}" type="text" value="${param.value}"/>
              </p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.type}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.required}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.desc}</p>
            </td>
          </tr>
          <%}%>
          </tbody>
        </table>
        <%}%>
        <%if(isNotEmpty(doc.queryParams)&&displayRequestParams){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>请求链接（QueryParams）参数说明:</strong>
          </p>
        </div>
        <table class="tableblock frame-all grid-all spread">
          <!--          <colgroup>-->
          <!--            <col style="width: 5%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--            <col style="width: 19%;">-->
          <!--          </colgroup>-->
          <thead>
          <tr>
            <th class="tableblock halign-left valign-top">
              <div class='checkbox'>
                <input type="checkbox" class="check-all" id="${doc.methodId}-query-checkbox" checked="checked"
                       name="${doc.methodId}-query-checkbox">
                <label for="${doc.methodId}-query-checkbox"></label>
              </div>
            </th>
            <th class="tableblock halign-left valign-top">Parameter</th>
            <th class="tableblock halign-left valign-top">Value</th>
            <th class="tableblock halign-left valign-top">Type</th>
            <th class="tableblock halign-left valign-top">Required</th>
            <th class="tableblock halign-left valign-top">Description</th>
          </tr>
          </thead>
          <tbody id="${doc.methodId}-query-params">
          <%for(param in doc.queryParams){%>
          <tr>
            <td class="tableblock halign-left valign-top">
              <div class='checkbox'>
                <input type="checkbox" id="${doc.methodId}-query-${param.field}" checked="checked"
                       name="${doc.methodId}-query-checkbox">
                <label for="${doc.methodId}-query-${param.field}"></label>
              </div>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.field}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">
                <%if(param.type=="file"&&!param.hasItems){%>
                <input name="${param.field}" type="file" value="${param.value}"/>
                <%}else if(param.type=="file"&&param.hasItems){%>
                <input name="${param.field}" type="file" value="${param.value}"/>
                <%}else{%>
                <input name="${param.field}" type="text" value="${param.value}"/>
                <%}%>
              </p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.type}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.required}</p>
            </td>
            <%if(param.version!='-'){%>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.desc}@since ${param.version}</p>
            </td>
            <%}else{%>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.desc}</p>
            </td>
            <%}%>
          </tr>
          <%}%>
          </tbody>
        </table>
        <%}%>
        <%if(isNotEmpty(doc.requestParams)&&displayRequestParams){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>请求体（RequestBody）参数说明:</strong>
          </p>
        </div>
        <table class="tableblock frame-all grid-all spread">
          <!--          <colgroup>-->
          <!--            <col style="width: 20%;">-->
          <!--            <col style="width: 20%;">-->
          <!--            <col style="width: 20%;">-->
          <!--            <col style="width: 20%;">-->
          <!--          </colgroup>-->
          <thead>
          <tr>
            <th class="tableblock halign-left valign-top">字段名</th>
            <th class="tableblock halign-left valign-top">字段类型</th>
            <th class="tableblock halign-left valign-top">字段说明</th>
            <th class="tableblock halign-left valign-top">是否必填</th>
          </tr>
          </thead>
          <tbody>
          <%for(param in doc.requestParams){%>
          <tr>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.field}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.type}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.required}</p>
            </td>
            <%if(param.version!='-'){%>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.desc}@since ${param.version}</p>
            </td>
            <%}else{%>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.desc}</p>
            </td>
            <%}%>
          </tr>
          <%}%>
          </tbody>
        </table>
        <%}%>
        <%if(isNotEmpty(doc.requestExample.jsonBody)&&isRequestExample){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>请求体（RequestBody）参数说明:</strong>
          </p>
        </div>
        <div class="listingblock">
          <div class="content">
            <pre><code contenteditable="plaintext-only" id="${doc.methodId}-body">${doc.requestExample.jsonBody}</code></pre>
          </div>
        </div>
        <%}%>
        <%if(isNotEmpty(doc.responseParams)&&displayResponseParams){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>响应字段（ResponseBody）说明:</strong>
          </p>
        </div>
        <table class="tableblock frame-all grid-all spread">
          <!--          <colgroup>-->
          <!--            <col style="width: 25%;">-->
          <!--            <col style="width: 25%;">-->
          <!--            <col style="width: 25%;">-->
          <!--            <col style="width: 25%;">-->
          <!--          </colgroup>-->
          <thead>
          <tr>
            <th class="tableblock halign-left valign-top">字段名</th>
            <th class="tableblock halign-left valign-top">字段类型</th>
            <th class="tableblock halign-left valign-top">字段说明</th>
            <!--            <th class="tableblock halign-left valign-top">字段版本</th>-->
          </tr>
          </thead>
          <tbody>
          <%for(param in doc.responseParams){%>
          <tr>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.field}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.type}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${param.desc}</p>
            </td>
            <!--            <td class="tableblock halign-left valign-top">-->
            <!--              <p class="tableblock">${param.version}</p>-->
            <!--            </td>-->
          </tr>
          <%}%>
          </tbody>
        </table>
        <%}%>
        <div class="paragraph">
          <p>
            <strong>
              <button class="send-button" data-id="${doc.methodId}">Send Request</button>
            </strong>
            <span id="${doc.methodId}-resp-status"></span>
          </p>
        </div>
        <%if(isNotEmpty(doc.responseUsage)&&isResponseExample){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>响应示例:</strong>
          </p>
        </div>
        <div class="listingblock">
          <div class="content" id="${doc.methodId}-response">
            <pre><code class="json">${doc.responseUsage}</code></pre>
          </div>
        </div>
        <%}%>
        <%if(isNotEmpty(doc.requestUsage)&&isRequestExample){%>
        <div class="paragraph" style="color: #329a00;">
          <p>
            <strong>Curl请求示例:</strong>
          </p>
        </div>
        <div class="listingblock">
          <div class="content" id="${doc.methodId}-curl">
            <pre><code class="bash">${doc.requestUsage}</code></pre>
          </div>
        </div>
        <%}%>
      </div>
      <%}%>
    </div>
  </div>
  <%}%>
  <%}%>
  <%if(isNotEmpty(errorCodeList)){%>
  <div class="sect1">
    <h2 id="_${errorListTitle}">
      <a class="anchor" href="#_${errorListTitle}"></a>
      <a class="link" href="#_${errorListTitle}">${errorCodeListOrder}.&nbsp;${errorListTitle}</a>
    </h2>
    <div class="sectionbody">
      <table class="tableblock frame-all grid-all spread">
        <!--        <colgroup>-->
        <!--          <col style="width: 50%;">-->
        <!--          <col style="width: 50%;">-->
        <!--        </colgroup>-->
        <thead>
        <tr>
          <th class="tableblock halign-left valign-top">错误码</th>
          <th class="tableblock halign-left valign-top">字段说明</th>
        </tr>
        </thead>
        <tbody>
        <%for(error in errorCodeList){%>
        <tr>
          <td class="tableblock halign-left valign-top">
            <p class="tableblock">${error.value}</p>
          </td>
          <td class="tableblock halign-left valign-top">
            <p class="tableblock">${htmlEscape(error.desc)}</p>
          </td>
        </tr>
        <%}%>
        </tbody>
      </table>
    </div>
  </div>
  <%}%>
  <%if(isNotEmpty(dictList)){%>
  <div class="sect1">
    <h2 id="_${dictListTitle}">
      <a class="anchor" href="#_${dictListTitle}"></a>
      <a class="link" href="#_${dictListTitle}">${dictListOrder}.&nbsp;${dictListTitle}</a>
    </h2>
    <div class="sectionbody">
      <%for(dict in dictList){%>
      <div class="sect2">
        <h3 id="_${dictListOrder}_${dict.order}_${removeLineBreaks(dict.title)}">
          <a class="anchor" href="#_${dictListOrder}_${dict.order}_${removeLineBreaks(dict.title)}"></a>
          <a class="link" href="#_${dictListOrder}_${dict.order}_${removeLineBreaks(dict.title)}">${dictListOrder}.${dict.order}.&nbsp;${htmlEscape(dict.title)}</a>
        </h3>
        <table class="tableblock frame-all grid-all spread">
          <!--          <colgroup>-->
          <!--            <col style="width: 33%;">-->
          <!--            <col style="width: 33%;">-->
          <!--            <col style="width: 33%;">-->
          <!--          </colgroup>-->
          <thead>
          <tr>
            <th class="tableblock halign-left valign-top">字典值</th>
            <th class="tableblock halign-left valign-top">数据类型</th>
            <th class="tableblock halign-left valign-top">字典说明</th>
          </tr>
          </thead>
          <tbody>
          <%for(dataDict in dict.dataDictList){%>
          <tr>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${dataDict.value}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${dataDict.type}</p>
            </td>
            <td class="tableblock halign-left valign-top">
              <p class="tableblock">${htmlEscape(dataDict.desc)}</p>
            </td>
          </tr>
          <%}%>
          </tbody>
        </table>
      </div>
      <%}%>
    </div>
  </div>
  <%}%>
  <footer class="page-footer">
    <span class="copyright">Generated by smart-doc at ${createTime}</span>
    <span class="footer-modification">Suggestions,contact,support and error reporting on<a
      href="https://gitee.com/smart-doc-team/smart-doc" target="_blank">&nbsp;Gitee</a>&nbsp;or<a
      href="https://github.com/smart-doc-group/smart-doc.git" target="_blank">&nbsp;Github</a>
				</span>
  </footer>
  <div href="javascript:void(0)" id="toTop">
    <img id="upArrow"
         src="">
    <span id="upText">Top</span>
  </div>
</div>
<script src="debug.js?v=${version}"></script>
<script src="search.js?v=${version}"></script>
<script>
  $(function () {
    $(window).scroll(function () {
      if ($(window).scrollTop() > 100) {
        let $toTop = $("#toTop");
        $toTop.fadeIn(1500);
        $toTop.hover(function () {
          $("#upArrow").hide();
          $("#upText").show()
        }, function () {
          $("#upArrow").show();
          $("#upText").hide()
        })
      } else {
        $("#toTop").fadeOut(1500)
      }
    });
    $("#toTop").click(function () {
      $("body,html").animate({scrollTop: 0}, 1000);
      return false
    })
  });
</script>
</body>
</html>